#include <stdio.h>
#include <stdlib.h>
// 插入排序：将数组分为有序和无序两部分，不断将无序中的元素拿来与有序中的元素比较大小，将较大的无序元素排在有序元素之后
void insert_sort(int str[], int n)
{
  int i;
  for (i = 1; i < n; i++)
  {
    int tmp = str[i]; // 无序元素tmp
	int j = i - 1;
    while (j >= 0 && tmp < str[j]) // 如果无序元素小于有序元素 就将有序元素向后移动
    {
      str[j + 1] = str[j];
      j--;
    }
    str[j + 1] = tmp; // 将tmp放在空出来的位置
  }
  
  
}
int main(int argc, char *argv[])
{
  int N, i;
  int str[100];
  scanf("%d", &N);
  for (i = 0; i < N; i++)
  {
    scanf("%d", &str[i]);
  }

  insert_sort(str, N);
  for (i = 0; i < N; i++)
  {
    printf("%d ", str[i]);
  }
  return 0;
}
